import { IGuard, Guard, httpError } from '@midwayjs/core';
import { Context } from '@midwayjs/koa';

@Guard()
export class DirectorGuard implements IGuard<Context> {
  async canActivate(
    ctx: Context
    //_supplierClz,
    //methodName: string
  ): Promise<boolean> {
    const user = ctx.state.user.directorFlag;
    if (!user) {
      throw new httpError.UnauthorizedError('用户信息不全');
    }
    // 假设角色是 1 表示科室主任
    if (user !== '1') {
      throw new Error('你不是科室主任，没有权限访问');
    }
    return true; // 如果通过验证，允许访问
  }
}
